﻿using System.Collections.ObjectModel;
using System.IO;
using System.Text.Json;

namespace P7_todoList_wpf;

public class TodoItemManager
{
    private const string FilePath = "todoList.json";
    private ObservableCollection<TodoItem> _todoItems=new ObservableCollection<TodoItem>();
    public TodoItemManager()
    {
        LoadFromFile();
    }
    //获取任务列表
    public ObservableCollection<TodoItem> GetTodos => _todoItems;
    //添加任务
    public void AddTodoItem(TodoItem todoItem)
    {
        _todoItems?.Add(todoItem);
        SaveToFile();
    }
    //任务标记完成
    //删除任务
    //从josn中读取数据
    public void LoadFromFile()
    {
        if (File.Exists(FilePath))
        {
            string json = File.ReadAllText(FilePath);
            _todoItems = JsonSerializer.Deserialize<ObservableCollection<TodoItem>>(json);
        }
    }
    //写入json文件
    public void SaveToFile()
    {
        string json = JsonSerializer.Serialize(_todoItems);
        File.WriteAllText(FilePath, json);
    }
}